home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 22 / Cream of the Crop 22.iso / os2 / ftree11a.zip / ANNDEATH.FTX < prev    next >
Text File  |  1996-10-30  |  3KB  |  113 lines

  1. /*
  2.    Family Tree Rexx Script FTX
  3.  
  4.    Copyright (C) 1996 by <Nils Meier>
  5.  
  6.    Please send comments to / Kommentar bitte an
  7.         meier2@athene.informatik.uni-bonn.de
  8.  
  9.    <
  10.    English:   This script shows the anniversaries of death in this year  :English
  11.    Deutsch:   Dieses Skript zeigt die Todestage in diesem Jahr.          :Deutsch
  12.    Nederlands:This script shows the anniversaries of death in this year  :Nederlands
  13.    Francais:  Ce script montre les dates anniversaires de décès dans
  14.               l'année en cours.                                          :Francais
  15.    >
  16.  
  17.    Long name is <
  18.                  English:    List anniversaries of death      :English
  19.                  Deutsch:    Auflisten der Todestage          :Deutsch
  20.                  Nederlands: List anniversaries of death      :Nederlands
  21.                  Francais:   Monte les anniversaires de décès :Francais
  22.                 >
  23. */
  24.  
  25. /* ----------------------- Params  /  Parameter ------------------- */
  26.  
  27. datewidth=14
  28. namewidth=datewidth+30
  29.  
  30. CALL initLanguage
  31.  
  32. /* ----------------- Display Header / Kopf der Ausgabe ------------- */
  33.  
  34. head=msg.Header.LANG||DATE()
  35. SAY(head)
  36. SAY(COPIES('=',length(head)))
  37.  
  38.  
  39. /* ------------------------------ Output / Ausgabe ----------------- */
  40.  
  41. /* Sort Persons by Death Month,Day  /  Menschen sortieren nach Todesmonat,Tag */
  42. rc=sortPersons('DM,DD')
  43.  
  44. /* Calculate actual year  /  aktuelles Jahr berechnen */
  45. thisyear=WORD(DATE(),3)
  46.  
  47. /* Display persons in tree  /  Menschen ausgeben */
  48.  
  49. rc=selectPerson('F')
  50. DO UNTIL rc=0
  51.  
  52.    /* Get month of Death  /  berechne Monat des Todes */
  53.    result=getDeathDate('m')
  54.  
  55.    /* Check if we've got a month  /  nachpruefen ob wir Monat haben */
  56.    IF result<>'?' THEN DO
  57.  
  58.       /* Get Day of Death  /  berechne Todestag */
  59.       day=getDeathDate('D')
  60.       if day<>0 THEN
  61.          result=result||' '||day
  62.       result=LEFT(result,datewidth)
  63.  
  64.       /* Add name,first name  /  plus Name,Vorname */
  65.       result=result||getName()||','||getFirstName()
  66.       result=LEFT(result,namewidth)
  67.  
  68.       /* Add anniversary  /  plus Jahrestag */
  69.       year=getDeathDate('Y')
  70.       IF year<>0 THEN
  71.          result=result||' ('||thisyear-year||')'
  72.  
  73.       /* output  /  Ausgabe */
  74.       SAY(result)
  75.    END
  76.  
  77.    /* Next one */
  78.    rc=selectPerson('N')
  79. END
  80.  
  81. /* Done */
  82. RETURN
  83.  
  84.  
  85. /* ---------------------- LANGUAGE INIT --------------------------- */
  86. InitLanguage:
  87.  
  88.    /* Calculate Language Index */
  89.    lang='E'                              /* Default -> [E]nglish */
  90.    IF getLanguage()='Deutsch' THEN       /* Deutsch -> [G]erman */
  91.       lang='G'
  92.    IF getLanguage()='Nederlands' THEN    /* Nederlands -> [D]utch */
  93.       lang='D'
  94.    IF getLanguage()='Francais' THEN      /* Francais -> [F]rench */
  95.       lang='F'
  96.  
  97.    /* [E]nglish Messages */
  98.    msg.Header.E='Anniversary of Death (next anniversary). Today is '
  99.  
  100.    /* [G]erman Messages */
  101.    msg.Header.G='Todestage. (naechster Jahrestag). Heute ist der '
  102.  
  103.    /* [D]utch Messages */
  104.    msg.Header.D='Anniversary of Death (next anniversary). Today is '
  105.  
  106.    /* [F]rench Messages */
  107.    msg.Header.F="Anniversaires de Décès (prochains anniversaires). Nous sommes le "
  108.  
  109.    /* Done */
  110.    RETURN
  111.  
  112.  
  113.